package com.wing.product.model.request;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

import org.springframework.format.annotation.DateTimeFormat;

/**
 * Form
 *
 * @author
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
public class ProcessInfoForm {

    /**
     * ID
     */
    private Long id;

    /**
     * 创建者
     */
    private Long creator;

    /**
     * 修改者
     */
    private Long modifier;

    /**
     * 创建人
     */
    private String creatorName;

    /**
     * 修改人
     */
    private String modifierName;


    /**
     * 节点名称
     */
    private String nodeNames;

    /**
     * 节点编码
     */
    private String nodeCodes;

    /**
     * 节点类型
     */
    private String nodeTypes;

    /**
     * 工序性质
     */
    private String processNature;

    /**
     * 是否支持委外
     */
    private String isOutsource;

    /**
     * 报工单位
     */
    private String unitId;

    /**
     * 是否用到工序
     */
    private String isUseknifeProcess;

    /**
     * 排序
     */
    private Integer sortNumber;

    /**
     * 备注
     */
    private String remark;

    /**
     * 状态
     */
    private String status;

    private Long roomInfoId;

    private List<Long> processIds;


    public interface Add {
    }

    public interface Update {
    }

    /**
     * 生成物资类别
     */
    private String productTypeIf;

    /**
     * 物资类别
     */
    private Long productTypeId;

    /**
     * 物料类别性质
     */
    private String productTypeNature;

    /**
     * 所属物资类别
     */
    private Long parentProductType;

    /**
     * 类别维护部门
     */
    private Long typeServiceDepartment;

    /**
     * 是否需要质检
     */
    private String qualityIf;

    /**
     * 检验频率
     */
    private String qualityRate;

    /**
     * 创建工序仓
     */
    private String processWarehouseIf;

    /**
     * 是否一物一码
     */
    private String thingCodeStatus;

    /**
     * 是否有质保期
     */
    private String guaranteeStatus;

    /**
     * 是否先进先出
     */
    private String inoutStatus;

    /**
     * 工时定额(分钟)
     */
    private BigDecimal hoursQuota;

    /**
     * 工资定额(金额)
     */
    private BigDecimal salaryQuota;

    /**
     * NG工资定额
     */
    private BigDecimal ngSalaryQuota;

    /**
     * 设备类型
     */
    private Long deviceType;

    /**
     * 质检类型
     */
    private String qualityAttributes;

    /**
     * 人员工种
     */
    private Long personnelWorkType;


}
